সি অপারেটর (C operator)

Computer Programming - সি প্রোগ্রামিং (C Programming) সি ব্যাসিক (C Basic Tutorial) |
407
407

এরিথমেটিক(arithmetic), কন্ডিশনাল(conditional) এবং বিটওয়াজ(bitwise) অপারেশন সম্পন্ন করার জন্য সি প্রোগ্রামিং এ অনেক ধরণের অপারেটর(oparetor) রয়েছে। এই অধ্যায়ে আপনি বিভিন্ন ধরণের সি অপারেটর এবং এদের ব্যবহার সম্মন্ধে জানবেন।

প্রোগ্রামিং অপারেটর

অপারেটর এক ধরণের প্রতীক(symbol) যা ভ্যালু(value) অথবা ভ্যারিয়েবলকে অপারেট করতে পারে। উদাহরণস্বরূপঃ +(যোগ চিহ্ন) একটি অপারেটর যা যোগের কাজে ব্যবহৃত হয়।

 

বিভিন্ন ধরণের অপারেশন সম্পাদনের জন্য সি প্রোগ্রামিং এ অনেক ধরণের অপারেটর রয়েছে। ভালভাবে বুঝার জন্য অপারেটরসমূহকে নিম্নোক্ত উপায়ে বিভক্ত করা যায়ঃ


সি প্রোগ্রামিং অপারেটর

  1. সি এরিথমেটিক অপারেটর - Arithmetic Operator
  2. সি ইনক্রিমেন্ট এবং ডিক্রিমেন্ট অপারেটর- Increment and Decrement Operator
  3. সি এসাইনমেন্ট অপারেটর - Assignment Operator
  4. সি রিলেশনাল অপারেটর - Relational Operator
  5. সি লজিকাল অপারেটর - Logical Operator
  6. সি কন্ডিশনাল অপারেটর - Conditional Operator
  7. সি বিটওয়াইজ অপারেটর - Bitwise Operator
  8. সি স্পেশিয়াল অপারেটর - Special Operator

সি এরিথমেটিক অপারেটর

এরিথমেটিক অপারেটর গাণিতিক হিসাব নিকাশ যেমন- যোগ, বিয়োগ, গুন এবং ভাগ ইত্যাদি কার্য সম্পন্ন করে।

অপারেটরঅপারেটেরের অর্থউদাহরণ(int a=11, b=5)ফলাফল
+যোগ বা ইউনারী(unary) যোগa + b16
-বিয়োগ বা ইউনারী বিয়োগa - b6
*গুনa * b55
/ভাগa / b2
%ভাগের পরে ফলাফল ভাগশেষ(মডিউলো অপারেটর)a % b1

 

 

উদাহরণঃ সি এরিথমেটিক অপারেটর

 

kt_satt_skill_example_id=115


+, - এবং * অপারেটর সঠিকভাবে যথাক্রমে যোগ, বিয়োগ এবং গুন করে।

সাধারনভাবে আপনি যদি 11 কে 5 (11/5)দিয় ভাগ করেন তাহলে ভাগফল পাবেন 2.2। কিন্তু আমাদের প্রোগ্রামের আউটপুট 2 পাওয়া গেছে।

কারণ উভয় ভ্যারিয়েবলের টাইপ ইন্টেজার। তাই আউটপুটও ইন্টেজার হয়েছে। কম্পাইলার দশমিক সংখ্যার দশমিকের পরের অংশকে কেটে ফেলেছে ফলে ফলাফল 2.2 এর পরিবর্তে 2 হয়েছে।

মডিউলো অপারেটর % এর মাধ্যমে ভাগশেষ পাওয়া যায়। উপরের উদাহরণে a = 11 কে b = 5 দিয়ে ভাগ করায় ভাগশেষ 1 পাওয়া গেছে। শুধুমাত্র ইন্টেজারের ক্ষেত্রেই % অপারেটর ব্যবহৃত হয়।

ধরুন a = 10.0, b = 4.0, c = 10 এবং d = 4 তাহলে সি প্রোগ্রামিং a/b = 2.5  //কারণ উভয় অপারেন্ড ফ্লোটিং পয়েন্ট ভ্যারিয়েবল। a/d = 2.5  //কারণ একটি অপারেন্ড  ফ্লোটিং পয়েন্ট ভ্যারিয়েবল। c/b = 2.5  //কারণ একটি অপারেন্ড  ফ্লোটিং পয়েন্ট ভ্যারিয়েবল। c/d = 2    // কারণ উভয় অপারেন্ড  ইন্টেজার ভ্যারিয়েবল।


সি ইনক্রিমেন্ট এবং ডিক্রিমেন্ট অপারেটর

কনস্ট্যান্ট অথবা ভ্যারিয়েবলের অপারেন্ডেকে ১ করে বৃদ্ধি বা হ্রাসের জন্য সি প্রোগ্রামিং এ যথাক্রমে দুটি অপারেটর আছে একটি হলো ইনক্রিমেন্ট(increment) ++ এবং অপরটি হলো ডিক্রিমেন্ট(decrement) --।

ইনক্রিমেন্ট অপারেটর ভ্যারিয়েবলের ভ্যালু এক করে বৃদ্ধি করে পক্ষান্তরে ডিক্রিমেন্ট অপারেটর ভ্যালু এক করে হ্রাস করে। এই দুটি অপারেটরকে ইউনারী(unary) অপারেটর বলা হয় কারণ এরা সিঙ্গেল অপারেন্ডকে অপারেট করতে পারে।

উদাহরণঃ সি ইনক্রিমেন্ট এবং ডিক্রিমেন্ট অপারেটর

kt_satt_skill_example_id=99

এখানে অপারেটর ++ এবং -- প্রিফিক্স(prefix) হিসাবে ব্যবহৃত হয়েছে। এই অপারেটর দুটি পোস্টফিক্স(postfix) হিসাবেও ব্যবহৃত হতে পারে। যেমন- a++ এবং a--। ইনক্রিমেন্ট এবং ডিক্রিমেন্ট অপারেটর সম্বন্ধে আরোও জানতে সি প্রোগ্রামে ইনক্রিমেন্ট এবং ডিক্রিমেন্ট অপারেটর অধ্যায় ভিজিট করুন।


সি এসাইনমেন্ট অপারেটর

ভ্যারিয়েবলে ভ্যালু এসাইন করা বা জমা রাখার জন্য এসাইনমেন্ট(assignment) অপারেটর ব্যবহৃত হয়। সবচেয়ে বেশী ব্যবহৃত এসাইনমেন্ট অপারেটর হলো =

অপারেটরউদাহরন(int a=11, b=5)একই রকমফলাফল
=a = ba = b5
+=a += ba = a+b16
-=a -= ba = a-b6
*=a *= ba = a*b55
/=a /= ba = a/b2
%=a %= ba = a%b1

 

উদাহরণঃ সি এসাইনমেন্ট অপারেটর

kt_satt_skill_example_id=100

সি রিলেশনাল অপারেটর

সি প্রোগ্রামিং এ রিলেশনাল অপারেটর(relational operator) দুটি অপারেন্ডের মধ্যে সম্পর্ক যাচাই করে। রিলেশন সত্যি(true) হলে 1 রিটার্ন করে; রিলেশন মিথ্যা(false) হলে 0 রিটার্ন করে।

 

সিদ্ধান্ত গ্রহণ(decision making) এবং লুপ(loop) এ রিলেশনাল অপারেটর ব্যবহৃত হয়।

অপারেটরঅপারেটরের অর্থউদাহরণ(int a=11, b=5)ফলাফল
==Equal toa == bFalse
>Greater thana > bTrue
<Less thana < bFalse
!=Not equal toa != bTrue
>=Greater than or equal toa >= bTrue
<=Less than or equal toa <= bFalse

 

উদাহরণ: সি রিলেশনাল অপারেটর

kt_satt_skill_example_id=101

সি লজিক্যাল অপারেটর

সি প্রোগ্রামিং এ &&, || এবং ! অপারেটরসমূহকে লজিক্যাল(Logial) অপারেটর বলা হয়। সি প্রোগ্রামিং এ সিদ্ধান্ত গ্রহণে(in decision making ) সচারচর লজিক্যাল অপারেটর ব্যবহৃত হয়।

অপারেটরঅপারেটরের অর্থউদাহরণ(int a=11, b=5, c =15)ফলাফল
&&Logial AND - উভয় অপারেন্ড true হলে True (a==b) && (b>c)True
||Logical OR - যেকোনো একটি অপারেন্ড true হলে True(b==c) || (a>c)False
!Logical NOT - অপারেন্ড false হলে True!(b==c)True


উদাহরণঃ সি লজিক্যাল অপারেটর

kt_satt_skill_example_id=103

উপরের উদাহরণের ব্যাখ্যা

  • (a = b) এবং (c > b) উভয় অপারেন্ড true হওয়ায় (a = b) && (c > 5) এর ফলাফল 1 হয়েছে।
  • অপারেন্ড (c < b) এর ভ্যালু false হওয়ায় (a = b) && (c < b) এর ফলাফল 0 হয়েছে।
  • অপারেন্ড (a = b) এর ভ্যালু true হওয়ায় (a = b) || (c < b) এর ফলাফল 1 হয়েছে।
  • (a != b) এবং (c < b) উভয় অপারেন্ড false হওয়ায় (a != b) || (c < b) এর ফলাফল 0 হয়েছে।
  • অপারেন্ড (a != b) এর ভ্যালু false হওয়ায় !(a != b) এর ফলাফল 1 হয়েছে। কারণ !(a != b) এর ভ্যালু true।
  • অপারেন্ড (a == b) এর ভ্যালু true হওয়ায় !(a == b) এর ফলাফল 0 হয়েছে। কারণ !(a == b) এর ভ্যালু false।

সি বিটওয়াইজ অপারেটর

হিসাব নিকাশের সময় গাণিতিক অপারেশন যেমন- যোগ, বিয়োগ, গুণ এবং ভাগ বিট-লেভেলে রূপান্তরিত হলে দ্রুত প্রোসেসিং হয় এবং শক্তি(power) সংরক্ষিত হয়।

সি প্রোগ্রামিং এ বিট-লেভেল অপারেশন সম্পন্ন করার জন্য বিটওয়াইজ(Bitwise) অপারেটর ব্যবহৃত হয়।

মনেকরি, নিচের টেবিলে x = 10 (বাইনারিতে 0000 1010) এবং y = 4 (বাইনারিতে 0000 0100)

অপারেটরঅপারেটরের অর্থউদাহরণ(x=10 এবং y=4)ফলাফল
&Bitwise ANDx& y = 0 (0000 0000)0
|Bitwise ORx | y = 14 (0000 1110)14
^Bitwise exclusive ORx ^ y = 14 (0000 1110)14
~Bitwise complement~x = -11 (1111 0101)-11
<<Shift leftx<< 2 = 42 (0010 1000)42
>>Shift rightx>> 2 = 2 (0000 0010)2

বিটওয়াইজ অপারেটর সম্মন্ধে আরোও জানতে আমাদের সি বিটওয়াইজ অপারেটর অধ্যায় ভিজিট করুন


অন্যান্য অপারেটর


 

সি কমা অপারেটর

সম্পর্কযুক্ত এক্সপ্রেশনসমূহকে একইসঙ্গে ডিক্লেয়ার(declare) করার জন্য কমা(comma) অপারেটর ব্যবহৃত হয়। উদাহরনস্বরুপঃ

int a, b = 10,  c = 5, d;

 


 

সি sizeof অপারেটর

sizeof অপারেটর হলো ইউনারী অপারেটর যা ডেটা যেমন- কনস্ট্যান্ট, ভ্যারিয়েবল, অ্যারে, স্ট্রাকচার ইত্যাদির সাইজ রিটার্ন করে

সিনট্যাক্স

sizeof(variable)

 

 

উদাহরণঃ sizeof অপারেটর

kt_satt_skill_example_id=105


সি টারনারী অপারেটর (?:)

যখন কোনো অপারেটর তিনটি অপারেন্ড(oparend) নিয়ে কাজ করে তাকে টারনারী(ternary) অপারেটর বলে। টারনারী অপারেটর দেখতে ?: এমন। টারনারী অপারেটরকে কন্ডিশনাল অপারেটরও বলা হয়।


 

কন্ডিশনাল অপারেটর সিনট্যাক্স



 

কন্ডিশনাল অপারেটরের কাজের ধাপ নিম্নে বর্ণনা করা হলোঃ

উপরের সিনট্যাক্সে বুলিয়ান এক্সপ্রেশন হলো কন্ডিশন এবং true part ও false part হয় ভ্যালু অথবা ভ্যারিয়েবল অথবা স্টেটমেন্ট অথবা যেকোনো গাণিতিক এক্সপ্রেশন হতে পারে। কন্ডিশন True হলে True part সম্পাদিত হয় অন্যথায় false part সম্পাদিত হয়।

উদাহরনঃ সি টারনারী(কন্ডিশনাল) অপারেটর

kt_satt_skill_example_id=106

অন্যান্য অপারেটর যেমন- রেফারেন্স(reference) অপারেটর(&), ডিরেফারেন্স(dereference) অপারেটর(*) এবং মেম্বার(member) সিলেকশন অপারেটর (->) সি পয়েন্টার অধ্যায়ে আলোচনা করা হয়েছে।

common.content_added_and_updated_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion